package org.sdp.pearproject.dto.request;

import com.alibaba.fastjson.annotation.JSONField;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.fasterxml.jackson.annotation.JsonProperty;

import java.util.List;
import java.util.Map;


/**
 * @ClassName: ProjectAddRequest
 * @Description:
 * @Author: SDP
 * @Date: 2022-07-08
 * @Version: 1.0
 * Table: pear_project
 * Comment:
 * 项目表
 */
public class ProjectAddRequest extends BaseRequest {
    private static final long serialVersionUID = 21143616655989113L;

    //封面
    @JsonProperty("cover")
    @JSONField(name = "cover")
    private String cover;

    public String getCover() {
        return cover;
    }
    
    public void setCover(String _v) {
        cover = _v;
    }

    //名称
    @JsonProperty("name")
    @JSONField(name = "name")
    private String name;

    public String getName() {
        return name;
    }
    
    public void setName(String _v) {
        name = _v;
    }

    //编号
    @JsonProperty("code")
    @JSONField(name = "code")
    private String code;

    public String getCode() {
        return code;
    }
    
    public void setCode(String _v) {
        code = _v;
    }

    //访问控制l类型
    @JsonProperty("access_control_type")
    @JSONField(name = "access_control_type")
    private String accessControlType;

    public String getAccessControlType() {
        return accessControlType;
    }
    
    public void setAccessControlType(String _v) {
        accessControlType = _v;
    }

    //可以访问项目的权限组（白名单）
    @JsonProperty("white_list")
    @JSONField(name = "white_list")
    private String whiteList;

    public String getWhiteList() {
        return whiteList;
    }
    
    public void setWhiteList(String _v) {
        whiteList = _v;
    }

    //排序
    @JsonProperty("order")
    @JSONField(name = "order")
    private Integer order;

    public Integer getOrder() {
        return order;
    }
    
    public void setOrder(Integer _v) {
        order = _v;
    }

    //删除标记
    @JsonProperty("deleted")
    @JSONField(name = "deleted")
    private Byte deleted;

    public Byte getDeleted() {
        return deleted;
    }
    
    public void setDeleted(Byte _v) {
        deleted = _v;
    }

    //项目类型
    @JsonProperty("template_code")
    @JSONField(name = "template_code")
    private String templateCode;

    public String getTemplateCode() {
        return templateCode;
    }
    
    public void setTemplateCode(String _v) {
        templateCode = _v;
    }

    //进度
    @JsonProperty("schedule")
    @JSONField(name = "schedule")
    private Double schedule;

    public Double getSchedule() {
        return schedule;
    }
    
    public void setSchedule(Double _v) {
        schedule = _v;
    }

    //创建时间
    @JsonProperty("create_time")
    @JSONField(name = "create_time")
    private String createTime;

    public String getCreateTime() {
        return createTime;
    }
    
    public void setCreateTime(String _v) {
        createTime = _v;
    }

    //组织id
    @JsonProperty("organization_code")
    @JSONField(name = "organization_code")
    private String organizationCode;

    public String getOrganizationCode() {
        return organizationCode;
    }
    
    public void setOrganizationCode(String _v) {
        organizationCode = _v;
    }

    //删除时间
    @JsonProperty("deleted_time")
    @JSONField(name = "deleted_time")
    private String deletedTime;

    public String getDeletedTime() {
        return deletedTime;
    }
    
    public void setDeletedTime(String _v) {
        deletedTime = _v;
    }

    //是否私有
    @JsonProperty("private")
    @JSONField(name = "private")
    private Byte _private;

    public Byte getPrivate() {
        return _private;
    }
    
    public void setPrivate(Byte _v) {
        _private = _v;
    }

    //项目前缀
    @JsonProperty("prefix")
    @JSONField(name = "prefix")
    private String prefix;

    public String getPrefix() {
        return prefix;
    }
    
    public void setPrefix(String _v) {
        prefix = _v;
    }

    //是否开启项目前缀
    @JsonProperty("open_prefix")
    @JSONField(name = "open_prefix")
    private Byte openPrefix;

    public Byte getOpenPrefix() {
        return openPrefix;
    }
    
    public void setOpenPrefix(Byte _v) {
        openPrefix = _v;
    }

    //是否归档
    @JsonProperty("archive")
    @JSONField(name = "archive")
    private Byte archive;

    public Byte getArchive() {
        return archive;
    }
    
    public void setArchive(Byte _v) {
        archive = _v;
    }

    //归档时间
    @JsonProperty("archive_time")
    @JSONField(name = "archive_time")
    private String archiveTime;

    public String getArchiveTime() {
        return archiveTime;
    }
    
    public void setArchiveTime(String _v) {
        archiveTime = _v;
    }

    //是否开启任务开始时间
    @JsonProperty("open_begin_time")
    @JSONField(name = "open_begin_time")
    private Byte openBeginTime;

    public Byte getOpenBeginTime() {
        return openBeginTime;
    }
    
    public void setOpenBeginTime(Byte _v) {
        openBeginTime = _v;
    }

    //是否开启新任务默认开启隐私模式
    @JsonProperty("open_task_private")
    @JSONField(name = "open_task_private")
    private Byte openTaskPrivate;

    public Byte getOpenTaskPrivate() {
        return openTaskPrivate;
    }
    
    public void setOpenTaskPrivate(Byte _v) {
        openTaskPrivate = _v;
    }

    //看板风格
    @JsonProperty("task_board_theme")
    @JSONField(name = "task_board_theme")
    private String taskBoardTheme;

    public String getTaskBoardTheme() {
        return taskBoardTheme;
    }
    
    public void setTaskBoardTheme(String _v) {
        taskBoardTheme = _v;
    }

    //项目开始日期
    @JsonProperty("begin_time")
    @JSONField(name = "begin_time")
    private String beginTime;

    public String getBeginTime() {
        return beginTime;
    }
    
    public void setBeginTime(String _v) {
        beginTime = _v;
    }

    //项目截止日期
    @JsonProperty("end_time")
    @JSONField(name = "end_time")
    private String endTime;

    public String getEndTime() {
        return endTime;
    }
    
    public void setEndTime(String _v) {
        endTime = _v;
    }

    //自动更新项目进度
    @JsonProperty("auto_update_schedule")
    @JSONField(name = "auto_update_schedule")
    private Byte autoUpdateSchedule;

    public Byte getAutoUpdateSchedule() {
        return autoUpdateSchedule;
    }
    
    public void setAutoUpdateSchedule(Byte _v) {
        autoUpdateSchedule = _v;
    }

    //描述
    @JsonProperty("description")
    @JSONField(name = "description")
    private String description;

    public String getDescription() {
        return description;
    }
    
    public void setDescription(String _v) {
        description = _v;
    }

    @Override
    public void checkParam() throws Exception {
    }

}
